package com.briup.oagg.facade.service.dateset;

import com.briup.oagg.facade.web.vm.dataset.BasinAddVM;
import com.briup.oagg.facade.web.vm.dataset.BasinUpdateVM;
import com.briup.oagg.facade.web.vm.dataset.BasinVM;
import com.briup.oagg.facade.web.vm.dataset.TreeInfoVM;
import com.briup.oagg.facade.web.vm.page.Page;

import java.util.List;

/**
 * 盆地信息业务逻辑接口
 *
 * @author briup
 */
public interface IBasinService {
    /**
     * 新增盆地
     * @param vm
     */
    void addBasin(BasinAddVM vm);

    /**
     * 修改盆地
     * @param vm
     */
    void updateBasin(BasinUpdateVM vm);

    /**
     * 删除盆地
     * @param basinId
     */
    void deleteById(String basinId);

    /**
     * 查询盆地总数
     * @return
     */
    Integer count();

    /**
     * 分页查询盆地
     * @param pageNum
     * @param pageSize
     * @return
     */
    Page<BasinVM> findByPage(Integer pageNum, Integer pageSize);

    /**
     * 查询地质信息树
     * @return
     */
    List<TreeInfoVM> findByTree();

}
